A conference call is a telephone call between two or more callers or users (referred to herein as a group of participants) at geographically distributed locations, which allows each participant to be able to speak to, and listen to, other participant(s) simultaneously. A conference call among a plurality of participants can be conducted via a voice conference bridge or centralized server, which connects numerous endpoint devices (VoIP devices or PSTN telephones) associated with the participants using appropriate communication protocols and mixes the various incoming voice streams from the plurality of participants either at the endpoint devices or at the conference bridge.
A Web conferencing tool enables the group of participants to organize and attend meetings online during a conference call by allowing a presenter in the group of the participants at the conference call to run a computer software application (also referred to herein as the application) or to present a material via a hosting device and share the application or material with the rest of the group (the viewers) to view in real time. For non-limiting examples, such Web conferencing tool enables the presenter to perform live demonstrations in real time, collaborate documents with colleagues, and provide training to customers and employees.
During the Web conferencing, an outgoing audio stream (or audio) of the material being presented and/or the application being run via the hosting device of the presenter (also referred to herein as the computer audio stream) may often need to be transmitted to the conference in addition to, and in separation from, an outgoing voice conference audio stream of the presenter or viewer speaking at the conference call (also referred to herein as the presenter or viewer audio stream, respectively). In the meantime, an incoming voice audio stream needs to be received from the rest of the group speaking at the conference call (also referred to herein as the voice conference audio stream). When there are more than one person who need to listen to and/or to speak at the conference call at the same location as the presenter or the viewer, the presenter or viewer may have to “open up” the conference call by using a separate speaker and a microphone associated with the hosting device to allow other people at the location to listen to the conference. Consequently, the computer audio stream and the conference audio stream played back through the speakers may get (partly) picked up by the microphone together with the presenter or viewer audio stream, causing deterioration in the audio quality of the conference call. Conversely, it is important to make sure that the two outgoing audio streams, the computer audio stream and the presenter audio stream, are transmitted “cleanly” by the hosting device without interfering with one another. Although some echo “canceling” or “cancellation” approaches target at suppressing and removing from one audio stream the echo, noise, and feedback of another, such approaches require capturing both of the audio streams independently at the same time, which is not always feasible due to hardware/software/OS limitations of the hosting device.
The foregoing examples of the related art and limitations related therewith are intended to be illustrative and not exclusive. Other limitations of the related art will become apparent upon a reading of the specification and a study of the drawings.